﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

/// <summary>
/// 供应商表
/// </summary>
public class MdVendor : Entity<int>
{
    /// <summary>
    /// 供应商编码
    /// </summary>
    [Required]
    [MaxLength(64)]
    public string VendorCode { get; set; }

    /// <summary>
    /// 供应商名称
    /// </summary>
    [Required]
    [MaxLength(255)]
    public string VendorName { get; set; } 

    /// <summary>
    /// 供应商简写
    /// </summary>
    [MaxLength(255)]
    public string VendorNick { get; set; } 

    /// <summary>
    /// 供应商英文名称
    /// </summary>
    [MaxLength(255)]
    public string? VendorEn { get; set; } 

    /// <summary>
    /// 供应商简介
    /// </summary>
    [MaxLength(500)]
    public string? VendorDesc { get; set; } 

    /// <summary>
    /// 供应商LOGO地址
    /// </summary>
    [MaxLength(255)]
    public string? VendorLogo { get; set; } 

    /// <summary>
    /// 供应商等级
    /// A：优质供应商; B：正常; C：重点关注; D：劣质供应商; E：黑名单
    /// </summary>
    [Required]
    [MaxLength(64)]
    public string VendorLevel { get; set; } 

    /// <summary>
    /// 供应商评分
    /// </summary>
    [Required]
    public int VendorScore { get; set; } 

    /// <summary>
    /// 供应商地点
    /// </summary>
    [MaxLength(500)]
    public string Address { get; set; } = string.Empty;

    /// <summary>
    /// 供应商官网地址
    /// </summary>
    [MaxLength(255)]
    public string Website { get; set; } = string.Empty;

    /// <summary>
    /// 供应商邮箱
    /// </summary>
    [MaxLength(255)]
    public string Email { get; set; } = string.Empty;

    /// <summary>
    /// 供应商电话
    /// </summary>
    [MaxLength(64)]
    public string Tel { get; set; }

    /// <summary>
    /// 联系人1
    /// </summary>
    [MaxLength(64)]
    public string Contact1 { get; set; } = string.Empty;

    /// <summary>
    /// 联系人1电话
    /// </summary>
    [MaxLength(64)]
    public string Contact1Tel { get; set; } = string.Empty;

    /// <summary>
    /// 联系人1邮箱
    /// </summary>
    [MaxLength(255)]
    public string Contact1Email { get; set; } = string.Empty;

    /// <summary>
    /// 联系人2
    /// </summary>
    [MaxLength(64)]
    public string Contact2 { get; set; } = string.Empty;

    /// <summary>
    /// 联系人2电话
    /// </summary>
    [MaxLength(64)]
    public string Contact2Tel { get; set; } = string.Empty;

    /// <summary>
    /// 联系人2邮箱
    /// </summary>
    [MaxLength(255)]
    public string Contact2Email { get; set; } = string.Empty;

    /// <summary>
    /// 统一社会信用代码
    /// </summary>
    [MaxLength(64)]
    public string CreditCode { get; set; } = string.Empty;

    /// <summary>
    /// 备注
    /// </summary>
    [MaxLength(500)]
    public string Remark { get; set; } = "无";

    /// <summary>
    /// 创建人
    /// </summary>
    [MaxLength(64)]
    public string? CreateBy { get; set; }

    /// <summary>
    /// 创建时间
    /// </summary>
    public DateTime? CreateTime { get; set; }

    /// <summary>
    /// 更新人
    /// </summary>
    [MaxLength(64)]
    public string? UpdateBy { get; set; }

    /// <summary>
    /// 更新时间
    /// </summary>
    public DateTime? UpdateTime { get; set; }
}
